Event processor

ABSTRACT

An event control section  210  receives an event notification from an input operation control section  212.  If the received event is a user ordered event based on an operation by a user  215,  the event control section  210  gives the received event to a GUI content reproduction section  209.  On the other hand, if the received event is a logic ordered event based on an order from a logic  201,  notification of future generated user ordered events are temporarily stopped and the logic ordered event is notified to GUI content reproduction section  209.  The temporary stop of notification of the user ordered event is released after completion of the logic ordered event at the GUI content reproduction section  209.

TECHNICAL FIELD

The present invention relates to; an event processor that notifies a GUIcontent about an event generated during GUI content reproduction, aprogram that the event processor executes, and an integrated circuitthat integrates a functional block of the event processor.

BACKGROUND ART

Generally, an application that attains a GUI (Graphical User Interface)has a GUI section that conducts interactions with a user, and a logicsection that executes a process after receiving an order from the user.There are cases in which the GUI section of the application is changedin response to a scene in which the application is used, or in responseto the user using the application. However, for some applications thathave a specific architecture, it is a problem that makes it necessary tochange not only the GUI section, but also both the GUI section and thelogic section (i.e. the whole application).

A MVC (Model-View-Controller) pattern is known as architecture to solvesuch a problem. If an application is designed in accordance with the MVCpattern, a GUI provided by the application can be changed easily only bychanging the GUI section (View and Controller). As described above, anapplication design method that applies the MVC pattern has a merit thatallows using the logic section (Model) without changes when the GUI ischanged. Details of MVC are described, for example, in non-patentreference 1.

A specific example of an application that provides the GUI is explainedin the following.

A web browser, represented by Internet Explorer (registered trademark)from Microsoft Corporation, for example, is generally used as anapplication to display a content of the Internet. A screen displayperformed by a web browser is often realized by applying the MVCpattern. Specifically, of the application of the web browser, a sectionfor displaying GUI for the user is attained as a GUI section, and anexecution function by a server that is accessed by the web browser isrealized as a logic section. In this case, GUI on the web browser can bechanged, with change made only to the GUI section, not to the logicsection.

A GUI section of a standard web browser is often realized by a GUIcontent (a content providing GUI) such as HTML (Hyper Text MarkupLanguage), and a logic section is often realized by a program. Among theGUI contents with potential of being displayed by web browsers, besideHTML documents that are normally supported by web browsers, there areGUI contents that possess a richer expressiveness than HTML documents.In order to display various types of GUI contents on an existing webbrowser, other than those that are not normally supported and other thana HTML document; it is generally necessary to plug-in a GUI contentreproduction section (e.g. a program) prepared for each type of GUIcontent to an existing web browser.

Specific examples of the GUI content other than the HTML document are;Macromedia Flash (registered trademark), SVG (Scalable Vector Graphics)standardized by W3C (World Wide Web Consortium) which is a consortiumthat develops and publishes internet standards, and OpenGL (registeredtrademark) which is the standard specification for 3-D graphics. TheseGUI contents are widely used by the public as a GUI section displayed ona web browser.

However, in recent years an attempt has been made to use such GUIcontents described above not only as a content browsed on a web browserbut also as a content for providing GUI for built-in devices.

FIG. 8 is a diagram schematically showing one example of a GUI content.A GUI content 1301 is a content with a combination of audios andanimations such as Vector Graphics and the GUI content 1301 is generatedby a GUI content generating device or a GUI content generating program.

The GUI content 1301 includes a plurality of scenes 1302 a to 1302 i.Furthermore, each of the scenes 1302 a to 1302 i includes a plurality ofsegments divided in a predetermined time interval. In the example inFIG. 8, the scene 1302 a includes five segments 1303 a to 1303 e.Allocated to each scene or to each segment are, orders for a process tochange a scene to another scene during reproduction of the GUI content1301, a process or an object (display-content) to change a segment toanother segment.

In order to make it possible to reproduce the GUI content 1301 describedin FIG. 8, a GUI content reproduction device is used which has a GUIcontent reproduction section that corresponds to the GUI content to bereproduced. In addition to a function that reproduces a GUI contentgiven from an application or the like, the GUI content reproductiondevice has a function of dynamically generating a GUI contentreproduction section and a function of discarding the GUI contentreproduction section. [Non-Patent Document 1] “Design Patterns forObject-Oriented Software Development” by Wolfgang Pree, Addison-WesleyPublishing Company, 1995.]

DISCLOSURE OF THE INVENTION Problems to be Solved by the Invention

Generally in a instrument that provides GUI, there exist an eventgenerated in accordance with a user operation by input devices such asan operation key or a mouse, and an event generated by a logic section.For example, in a case in which a terminal device is a mobile phone, theevents generated by the logic section are: notifications of incomingphone calls, incoming mail and low battery capacity; alarms; display ofcontents processed by a scheduler; and the like. Hereinafter, an eventused to convey the user order to the GUI content is referred to as “userordered event”, and an event used to convey the logic order to the GUIcontent is referred to as “logic ordered event”.

The user ordered event and the logic ordered event are generated in aspontaneous timing and conveyed to the GUI content. Therefore, there areno problems in cases when both events are generated in differenttimings, but there is a possibility in which normal operation becomesinterrupted in cases when both events are generated simultaneously andcompete with each other. Hence, the GUI content reproduction sectionneeds to be modified such that there are no problems even when bothevents compete with each other.

However, in most cases source codes of a program necessary to modify theGUI-content reproduction section are not disclosed, in reality making itdifficult to modify the GUI content reproduction section. Therefore,when the GUI content reproduction section cannot be modified, onepossible method is to allocate the logic ordered event to a part of auser ordered event operation, in order to mimic and utilize the part asthe logic ordered event. FIG. 9 is a diagram of an example of aconventional content reproduction system's composition that uses thismethod.

However, even in this method, since the logic ordered event isessentially a part of the user ordered event, when the user orderedevent and the logic ordered event are generated simultaneously, normaloperation of the GUI content reproduction section may be interrupted asa result of a plurality of different events continuously notified to theGUI content reproduction section.

For example, there is a problem that a mouse cursor does not getdisplayed in accordance with the user's intent (a mouse cursor moves toa logic event button located outside of a screen display area, resultingin a state without the mouse cursor being displayed on the screen), whenthe logic ordered event is generated during generation of the userordered event. Additionally, there is a problem that a process triggeredby the logic ordered event becomes unstable (an executed process stopswhen a mouse cursor, located on a logic event button outside of a screendisplay area, is moved by a user operation) when the user ordered eventis generated during generation of the logic ordered event.

Therefore, an objective of the present invention is to provide an eventprocessor that is capable of simultaneously processing an event based ona user operation and an event based on a control by the logic, whileutilizing an existing GUI content reproduction section.

Solution to the Problems

The present invention is directed to an event processor; for notifyingabout a generated event to a GUI content reproduction section whichreproduces a GUI content provided by the GUI, and outputs a reproduceddisplay content to a drawing section. In order to achieve the objective,the event processor of the present invention includes; an eventdetermining section, an event control section, a user operation storingsection, a unlock condition section, and a lock control section.

The event determining section for determining whether the generatedevent is a user event based on a user operation via an input device oran event other than the user event. The event control section fornotifying a GUI content reproduction section about the generated eventbased on a determination result from the event determining section. Theuser operation storing section for storing information about the useroperation outputted from the event control section when the generatedevent is an event other than the user event. The unlock conditionsection for storing, when the generated event is an event other than theuser event, contents generated by the GUI content reproduction sectiondisplayed before and after the execution of a process previouslyallocated to events other than the user event, each being stored as afirst display-content and a second display-content; and the unlockcondition section determines the match of the first display-content andthe second display-content. The lock control section that controlsstopping and restarting the update of drawing in the drawing sectionbased on an order from the event control section. The event controlsection is operable to, when the generated event is an event other thanthe user event, stop notifying the GUI content reproduction sectionabout user events that follows notification to the GUI contentreproduction section about the event other than the user event, and atthe same time order the lock control section to stop the update ofdrawing in the drawing section; and the event control section is alsooperable to, when the first display-content and the seconddisplay-content is determined as a match by the unlock conditionsection, order to have the information stored in the user operationstoring section to be outputted to the GUI content reproduction section,order to restart the notification of the GUI content reproductionsection about user events, and order the lock control section to restartthe update of drawing in the drawing section.

Preferably, the user operation storing section stores cursor informationas an information of the user operation in order to be able to specifycoordinates of the drawing section on the screen. Furthermore, the eventdetermining section determines whether the generated event is the userevent or the event other than the user event based on; a coordinateposition of a cursor on the display-content when the generated event isan event carried out by the cursor, or the kind of a key when thegenerated event is an event carried out by the key.

Each process conducted by each composition of the event process or maybe viewed as an event processing method that provides a series ofprocedures. This method is offered as a form of program which causes acomputer to execute the series of procedures. The program may beintroduced to the computer in a recorded form as a computer readablerecording medium. Furthermore, each composition of the event processormay be realized as a LSI which is an integrated circuit.

EFFECT OF THE INVENTION

According to the present invention, it is possible to simultaneouslyprocess an event generated by an input device based on a user operationand an event generated by a logic section, while utilizing an existingGUI content reproduction section.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of a screen-display-content generated whena GUI content is reproduced.

FIG. 2 is a diagram showing an example of an event generated by a GUIcontent.

FIG. 3 is a diagram showing a composition of a content reproductionsystem which includes an event processor 211 according to one embodimentof the present invention.

FIG. 4A is a diagram showing one example of an event determination tablereferred to by the event determining section 205 in FIG. 3.

FIG. 4B is a diagram showing one example of an event determination tablereferred to by the event determining section 205 in FIG. 3.

FIG. 5 is a sequence diagram illustrating the sequence of the eventprocessor 211 after GUI content reproduction and reception of a userordered event.

FIG. 6 is a sequence diagram illustrating the sequence of the eventprocessor 211 after receiving a logic ordered event.

FIG. 7 is a diagram describing a displaying process of a GUI contentthat is being reproduced by the event processor 211.

FIG. 8 is a diagram schematically showing one example of a GUI content.

FIG. 9 shows a composition of a conventional content reproductionsystem.

DESCRIPTION OF THE REFERENCE CHARACTERS

-   -   101 GUI content    -   102 user operation area    -   103 button placement area    -   104, 302 logic ordered event-receiving button    -   105, 303, 304, 305 object    -   201 logic    -   202 input device    -   204 event generation section    -   205 event determining section    -   206 user operation storing section    -   207 unlock condition section    -   208 lock control section    -   209 GUI content reproduction section    -   210 event control section    -   211 event processor    -   212 input operation control section    -   213 drawing section    -   214 drawing device    -   215 user    -   301 mouse cursor

BEST MODE FOR CARRYING OUT THE INVENTION

Prior to describing an event processor of the present invention, oneexample of a GUI content will be described. FIG. 1 describes a schematicdiagram of a screen-display-content generated when a GUI content isreproduced. A GUI content 101 is a content capable of realizing a GUI ona screen, and provides a user operation area 102 that is displayed onthe screen and a button placement area 103 that is not displayed on thescreen.

A user operation area 102 is an area that provides the GUI for the useron a display screen in an instrument, and by a user operation of inputdevices such as a keyboard or a pointing device, the user operation area102 generates a user ordered event allocated to the operation.

For example, an object 105, that changes a display-content or generatesaudio in accordance with the user ordered event, may be located on theuser operation area 102. In particular, the GUI content 101 is composedsuch that, when the user conducts an operation so as to overlap apointer (not shown) on the object 105, based on the user ordered eventthat generated by the user operation, the display-content of the object105 changes, or music is reproduced or a sound effect is sounded.

A logic ordered event-receiving button 104 is located in a buttonplacement area 103. Even though the button placement area 103 is notdisplayed on the screen, in case where the logic ordered event-receivingbutton 104 is pressed, that is, when a coordinate value of the pointeris in the area of the logic ordered event-receiving button 104 locatedoutside the screen display, an event allocated for the logic orderedevent-receiving button 104 is generated.

The button placement area 103 and the logic ordered event-receivingbutton 104 are provided in order to generate an event asynchronous tothe user operation in response to orders from the logic of anapplication or the like. In order for the logic to generate an event ina spontaneous timing from the GUI content 101 or to notify the GUIcontent 101 of an event in a spontaneous timing, the logic uses thelogic ordered event allocated to the button placement area 103 that isnot displayed on the screen.

One example of an event generated by the GUI content is an event thatnotifies about a URL shown in FIG. 2. In response to the selection ofthe logic ordered event-receiving button 104 by the logic section, theGUI content generates an event that notifies the logic section about“http://www.xxx.com/xxx.html”. Upon receiving the URL, the logic sectionaccesses a source external to the GUI content, such as the Internet, andacquires the data specified by the URL. And, the logic section candynamically change the display-content or audio of the GUI content byreflecting the acquired data to the GUI content. A specific example of aGUI content is described above as Background Art.

In the example in FIG. 1, although the button placement area 103 islocated outside the user operation area 102, the button placement area103 may also be located being partially overlapped with the useroperation area 102. Furthermore, the user ordered event may be a mouseevent or a key event. Moreover, the timing when the GUI content 101generates an event may be when the pointer is placed on the logicordered event-receiving button 104 or when the pointer is moved out fromthe logic ordered event-receiving button 104.

Hereinafter, an event processor 211 of the present invention will bedescribed. FIG. 3 is a diagram showing a composition of a contentreproduction system which includes an event processor 211 according toone embodiment of the present invention. The content reproduction systemshown in FIG. 3 includes, the event processor 211, an event generationsection 204, an input operation control section 212, a GUI contentreproduction section 209, a drawing section 213 and a drawing device214. This system may be attained as, for example, a mobile phone device,a part or the whole of an electronic device such as a mobile terminaldevice, or a program or an integrated circuit that are integrated inthese devices.

The event generation section 204 generates the user ordered event andthe logic ordered event. In particular, the event generation section 204corresponds to a logic 201 executed by the application and an inputdevice 202. The input device 202 is not limited to a single form as longas it is capable of outputting a signal based on a user operation. Forexample, the input device 202 may be a pointing device such as a mouseor a touch panel, or may be a keyboard.

Upon receiving the user ordered event notified by the input device 202,the input operation control section 212 orders the drawing section 213to draw a cursor position in compliance to the user operation and alsonotifies the event processor 211 about the received user ordered event.Additionally, upon receiving the logic ordered event notified by thelogic 201, the input operation control section 212 notifies the eventprocessor 211 about the received logic ordered event. The inputoperation control section 212 may notify the event processor 211 aboutthe received event without ordering the drawing section 213 to draw acursor position.

The GUI content reproduction section 209; reproduces the GUI contentregistered by a user 215 or the logic 201 via the input operationcontrol section 212, and orders the drawing section 213 to updatedrawing of a reproduction-content. Additionally, the GUI contentreproduction section 209 executes a process that corresponds to thee-vent notified by the event processor 211. A reproduction sectionprovided for each type of GUI content may be utilized as the GUI contentreproduction section 209.

The drawing section 213 controls drawing on the drawing device 214 suchas displays. Additionally, the drawing section 213 draws thedisplay-content generated by the GUI content reproduction section 209 onthe drawing device 214, by reproducing the GUI content in accordancewith a drawing demand from the event processor 211.

The event processor 211 receives the event notified by input operationcontrol section 212 while the GUI content reproduction section 209 isreproducing the GUI content, and in accordance with the received event,orders the drawing section 213 to update the drawing of thereproduction-content. This event processor 211 includes; an eventcontrol section 210, an event determining section 205, a user operationstoring section 206, an unlock condition section 207 and a lock controlsection 208.

The event control section 210 gives the received event to the eventdetermining section 205, via the input operation control section 212,from the logic 201 or from the input device 202, and demands for adetermination of the event. Then, the event control section 210 conductsa later described process for; the user operation storing section 206,the unlock condition section 207 and the lock control section 208, basedon a determination result from the event determining section 205.

The event determining section 205 determines whether the event receivedfrom the event control section 210 is a user ordered event notified fromthe input device 202 or a logic ordered event notified from the logic201. Then, the event determining section 205 returns the determinationresult to the event control section 210. Specifically, the eventdetermining section 205 determines the type of the received event basedon an event determination table. FIG. 4A and FIG. 4B are diagramsshowing one example of the event determination table referred to by theevent determining section 205.

FIG. 4A is an example in which, when a X-Y coordinate system is used torepresent the display-content generated by reproducing the GUI content,among the display-content, an area allocated for the user ordered eventand an area allocated for the logic ordered event are defined by a X-Ycoordinate range. Assume an example of a case in which the eventdetermining section 205 receives a cursor event indicating an eventgeneration coordinates (100, 100). Since the event generationcoordinates (100, 100) are within a rectangular area defined by startpoint (0, 0) and end point (200, 200), the event determining section 205determines that the received event is a user ordered event. FIG. 4B isan example defining the correspondence of an event such as key pressingand the type of the event.

The user operation storing section 206 stores the information of a useroperation such as cursor position (coordinates) and event type (key ormouse). The user operation storing section 206 may store a key code asthe user operation. The unlock condition section 207: stores a bitmapinformation (unlock condition) of the display screen immediately beforestoppage of the drawing-update given from the event control section 210;and determines whether or not a bitmap given from the event controlsection 210 during the update stoppage and the stored bitmap areidentical. A reproduction screen ID may be used instead of the bitmapinformation of the display screen. Furthermore, in the case of audio, amusic reproduction end position (e.g. the time information from thebeginning) or a state of the sound effect (e.g. determination of beforeor after being sounded; or the number of sounded times) may be used. Thelock control section 208, when given event orders from the controlsection 210, demands the drawing section 213; stoppage of drawing-updatewhen order to stop drawing-update is given, and restart ofdrawing-update when order to restart drawing-update is given.

The event control section 210 notifies the GUI content reproductionsection 209 about the received event when a returned result from theevent determining section 205 indicates that the event is a user orderedevent. On the other hand, the event control section 210 executes thefollowing processes when a returned result from the event determiningsection 205 indicates that the event is a logic ordered event.

(a) Stores the user operation information such as current cursorpositions in the user operation storing section 206.

(b) Stores the unlock condition in the unlock condition section 207.

(c) Orders the lock control section 208 to stop drawing-update.

(d) Orders the input operation control section 212 to stop the userordered event notification.

(e) Orders the drawing section 213 via the GUI content reproductionsection 209 to stop the cursor position drawing-update.

Subsequently, the event control section 210; notifies the GUI contentreproduction section 209 about the logic ordered event, and when beingnotified by the GUI content reproduction section 209 that the processdefine by the event has finished, executes the following processes.

(f) Acquires the stored user operation from user operation storingsection 206.

(g) Notifies the GUI content reproduction section 209 that the useroperation stored in the user operation storing section 206 is a userordered event.

(h) Acquires the determination result from the unlock condition section207 of whether the unlock condition is satisfied or not.

(i) Orders the lock control section 208 to restart drawing-update whenthe determination result satisfies the unlock condition at process (h).

(j) Orders the input operation control section 212 to restartnotification of the user ordered events.

(k) Orders the drawing section 213 to restart drawing-update of thecursor position.

The input operation control section 212 does not necessarily have tostop the drawing section 213 from updating the drawing of the cursorposition (described above as (c)). In such a case, the drawing section213 may draw the cursor at coordinates acquired from the user operationstoring section 206 before being ordered by the lock control section 208to restart drawing-update (described above as (i)).

FIG. 5 is a sequence diagram illustrating the sequence of the eventprocessor 211 after GUI content reproduction and reception of a userordered event. FIG. 6 is a sequence diagram illustrating the sequence ofthe event processor 211 after receiving a logic ordered event. FIG. 7 isa diagram describing a displaying process of a GUI content that is beingreproduced by the event processor 211. FIG. 7 shows a GUI contentexample in which an object 303 is displayed as enlarged when the mousecursor overlaps with object 303 located in the user operation area 102.

In the following, in reference to FIG. 5 to FIG. 7 and FIG. 3, detailsof the control process of the event processor 211 in the presentinvention are described separately as; the GUI content reproductionprocess, the user ordered event notifying process, and the logic orderedevent notifying process. The description below assumes a case in whichthe input device 202 is a mouse, however, similar processes are alsoapplicable to a case in which the input device 202 is not a mouse.

<A. GUI Content Reproduction Process>

(Step 1) The logic 201 notifies the GUT content reproduction section 209about a GUI content reproduction demand via the input operation controlsection 212.

(Step 1.1) The GUI content reproduction section 209 reproduces a GUIcontent ordered by the logic 201.

(Step 1.2) The GUI content reproduction section 209 generates a drawingcontent by reproducing the GUI content and orders the drawing section213 to update the screen with the generated drawing content.

(Step 1.2.1) The drawing section 213 transfers the drawing contentreceived from the GUI content reproduction section 209 to the drawingdevice 214. As a result, the GUI content is displayed on the screen ofthe drawing device 214.

For example, when the GUI content contains an animation asdisplay-content, steps 1.1 to 1.2.1 are repetitively processed at everyframe that consists the animation.

<B. User Ordered Event-Notifying Process> (FIG. 5)

(Step 2) Next, a case is assumed in which the user 215 operates theinput device 202 and overlaps the mouse cursor 301 on the object 303during reproduction of the GUI content.

(Step 2.1) The input device 202 notifies the input operation controlsection 212 about a mouse event that corresponds to the mouse movement.

(Step 2.1.1) The input operation control section 212 orders the drawingsection 213 to draw a mouse cursor.

(Step 2.1.1.1) In response to the order from the input operation controlsection 212, the drawing section 213 transfers the drawing of the mousecursor to the drawing device 214.

The mouse cursor 301 is displayed as shown in (b) of FIG. 7 by the aboveprocesses.

(Step 2.1.2) The input operation control section 212 notifies the eventcontrol section 210 about the mouse event outputted from the inputdevice 202.

(Step 2.1.2.1) The event control section 210 outputs coordinates of themouse event to the event determining section 205 and orders to determinethe event.

(Step 2.1.2.1.1) Based on an event determination table, the eventdetermining section 205 determines whether the notified coordinates areincluded within the user operation area 102 or the button placement area103. In the present example, the event determining section 205 returns adetermination result, to the event control section 210, that it is auser ordered event.

In the example in (b) of FIG. 7, it is determined as a user orderedevent since the mouse event coordinates are located in the useroperation area 102.

(Step 2.1.2.2) The event control section 210 notifies the GUI contentreproduction section 209 about the mouse event.

(Step 2.1.2.2.1) The GUI content reproduction section 209 conducts theprocess allocated to the event, and reproduces the display-content thatshows an enlarged state of the object 303.

(Step 2.1.2.2.2) The GUI content reproduction section 209 orders thedrawing section 213 to draw the reproduced display-content.

(Step 2.1.2.2.2.1) The drawing section 213 transfers the drawing contentto the drawing device 214. As a result, the screen in the drawing device214 is updated.

As a result of the above processes, a user interface is realized inwhich, for example, when the mouse cursor 301 is overlapped with theobject 303, as shown in (a) of FIG. 7, the object 303 changes into anenlarged object 304, as shown in (b) of FIG. 7.

<C. Logic Ordered Event-Notifying Process> (FIG. 6)

Next, a case is considered in which the display-content of the useroperation area 102 is changed asynchronously to a user operation. Whenassuming a case in which the terminal device is a mobile phone, thecontents displayed asynchronously to the user operation are, forexample, incoming phone calls, incoming mails, notifications of lowbattery capacity, alarms, displays of schedule content, or the like.Such displays are generated as needed and are not necessarily generatedin accordance with an order from the user. Hence, the logic orderedevent is utilized to display the necessary information on the screen ina spontaneous timing.

(Step 1) A case is assumed in which an object 305, which indicates thatthe application has received a newly arrived information, is displayedon the screen in the situation in (b) of FIG. 7. In order to have theGUI content reproduction section 209 to reproduce the object 305, thelogic 201 generates a logic ordered event indicating that the mousecursor is located within the logic ordered event-receiving button 302.

(Step 1.1) The event control section 210 notifies the event determiningsection 205 about coordinates of the mouse event and orders to determinethe event.

(step 1.1.1) Based on an event determination table, the eventdetermining section 205 determines whether the notified coordinates areincluded within the user operation area 102 or the button placement area103. In the present example, the event determining section 205 returns adetermination to the event control section 210 that it is a logicordered event.

(Step 1.2) The event control section 210 stores the coordinates of themouse cursor operated by the user 215 in the user operation storingsection 206.

(Step 1.3) The even control section 210 acquires a bitmap displayed onthe current screen from the drawing section 213. Instead of acquiringthe bitmap from the drawing section 213, the event control section 210may acquire the drawing content buffered by the GUI content reproductionsection 209 as a bitmap.

(Step 1.4) The event control section 210 stores the acquired bitmap inthe unlock condition section 207 as an unlock condition.

(Step 1.5) The even control section 210 orders the lock control section208 to stop drawing-update.

(Step 1.5.1) In response to the order from the event control section 210to stop drawing-update, the lock control section 208 orders the drawingsection 213 to stop the transfer of the drawing content to the drawingdevice 214.

(Step 1.6) The event control section 210 orders the input operationcontrol section 212 to stop notifying the user ordered events.Additionally, the event control section 210 orders the drawing section213 to stop updating the cursor position.

With the above-described processes, during the stoppage ofdrawing-update, a screen shown in (c) of FIG. 7 is kept on beingdisplayed continuously on the drawing device 214 (screen lock).

(Step 1.7) The mouse event notified as the logic ordered event in step 1is notified by the event control section 210 to the GUI contentreproduction section 209. Here, the logic ordered event-receiving button302 shown in (d) of FIG. 7 is notified about the event.

(Step 1.7.1) The GUI content reproduction section 209 reproduces aprocess allocated to the mouse event.

(Step 1.7.2) The GUI content reproduction section 209 orders the drawingsection 213 to update the display screen with the reproduceddisplay-content. This step 1.7.2 may be omitted. The update result isshown in the drawing in (e) of FIG. 7 (drawing of the object 305).

(Step 1.8) The event control section 210 acquires the mouse cursorcoordinates from the user operation storing section 206.

(Step 1.9) The event control section 210 outputs the mouse cursorcoordinates acquired from the user operation storing section 206 to theGUI content reproduction section 209, and notifies about the mouseevent.

(Step 1.9.1) The GUI content reproduction section 209 conducts areproduction process.

(Step 1.9.2) The GUI content reproduction section 209 orders the drawingsection 213 to update drawing of the updated display-content. This step1.9.2 may be omitted.

(Step 1.10) The event control section 210 acquires a bitmap of theupdated screen from the drawing section 213. Instead of acquiring thebitmap from the drawing section 213, the event control section 210 mayacquire the drawing content buffered by the GUI content reproductionsection 209 as a bitmap.

(Step 1.11) In order to determine whether the unlock condition issatisfied or not, the event control section 210 outputs the acquiredbitmap to the unlock condition section 207. In particular, the unlockcondition section 207 determines whether or not the bitmap outputtedfrom the event control section 210 in step 1.11 and the bitmap stored atstep 1.3 matches. Then, the unlock condition section 201; returnsinformation to the event control section 210 indicating that the unlockcondition is satisfied (the case in FIG. 5) when the two bitmaps matches(object 304 of (g) in FIG. 7), and returns an information to the eventcontrol section 210 indicating that the unlock condition is notsatisfied for other cases (object 306 of (f) in FIG. 7).

(Step 1.12) The event control section 210 orders the lock controlsection 208 to restart update of the display screen (or reproduce musicfrom the reproduction-finished position)

(Step 1.12.1) In response to the update restart order from the eventcontrol section 210, the lock control section 208 orders the drawingsection 213 to restart the transfer of the drawing content to thedrawing device 214.

(Step 1.12.1.1) In accordance with the order by the lock control section208, the drawing section 213 restarts the transfer of the drawingcontent to the drawing device 214.

(Step 1.13) The event control section 210 orders the input operationcontrol section 212 to restart notification of user ordered events, andat the same time orders the drawing section 213 to restart update of thecursor position.

With the above-described processes, the contents shown in (d) to (g) ofFIG. 7 are sequentially processed internally and the displaying processof the object 305 is completed, and then screen lock is removed as shownin (h) of FIG. 7, and then a GUI content with a user ordered eventreflected by a logic ordered event on is reproduced.

As described above, with the event processor 211 according to oneembodiment of the present invention, screen update of the drawingsection 213 is stopped in response to logic ordered event generation.Accordingly, mouse cursor display change against the user's intent canbe prevented because the display-content immediately preceding the logicordered event generation is continuously displayed on the screen.

Furthermore, with the event processor 211, the input operation controlsection 212 is ordered to stop notifying a user ordered event inresponse to logic ordered event generation. This makes it possible toavoid interference between a notification of a user ordered event and anotification of a logic ordered event. During the stoppage of thenotification of a user ordered event, a user ordered event generated bya GUI content may be ignored.

Furthermore, with the event processor 211, a user operation thatstopped, during notification of a logic ordered event by logic 201 tothe event control section 210, is stored in the user operation storingsection 206. As a result, once after the logic ordered event isfinished, based on coordinates stored in the user operation storingsection 206, it is possible for the event control section 210 to executea process that corresponds to the user ordered event.

Furthermore, the above-described embodiment may also be realized bycausing a computer to execute a program which can cause the computer toexecute the above-described procedures stored in a storage device (i.e.ROM, RAM, hard disk, etc.). The computer here is a concept that includesa computer incorporated in a mobile terminal device. In this case, theprogram may be executed after being stored in a storage device via arecording medium, or may be directly executed from a storage medium.Here, a storage medium refers to: semiconductor memories such as ROMs,RAMs and flash memories; magnetic disc memories such as flexible disksand hard disks; optical disks such as CD-ROMs, DVDs and BDs; andrecording media such as memory cards. Furthermore, a recording medium isa concept that includes communication media such as phone lines andcarrier channels.

Furthermore, a functional block (FIG. 3) of the event processoraccording to the above-described embodiment may be realized as a LSI,which is an integrated circuit. These functional blocks may besingle-chipped, or may be single-chipped so as to include a part or thewhole of the functional block. Even though LSI is referred to in theabove description, depending on the difference in the degree ofintegration, it is also called as an IC, a system LSI, a super LSI or anultra LSI. Furthermore, the method for circuit-integration is notlimited to LSI, and may be realized through circuit-integration of adedicated circuit or a general-purpose processor. Furthermore, a FPGA(Field Programmable Gate Array) that is capable of programming aftermanufacturing the LSI or a reconfigurable processor capable ofreconstituting connections and configurations of a circuit cell withinthe LSI, may be used. Additionally, if a technology forcircuit-integration that replaces the LSI is introduced with the advancein semiconductor technology or derivation from other technologies,obviously, such technologies may be used for integrating the functionalblock. One such possibility is the application of biotechnology.

INDUSTRIAL APPLICABILITY

An event processor of the present invention is applicable to aninformation processing terminal or the like which has a screendisplaying device such as a mobile phone, a PDA, a digital camera, a PCand a car navigation system; and particularly useful in a case in whichsimultaneous processing of an event based on a user order and an eventbased on a logic order is desired without any modifications to anexisting GUI content reproduction section.

1. An event processor for notifying about a generated event to a GUIcontent reproduction section which reproduces a GUI content provided bythe GUI, and outputs a reproduced display content to a drawing section;the event processor comprising: an event determining section fordetermining whether the generated event is a user event based on a useroperation via an input device or an event other than the user event; anevent control section for notifying the GUI content reproduction sectionabout the generated event based on a determination result from the eventdetermining section; a user operation storing section for storinginformation about the user operation outputted from the event controlsection when the generated event is an event other than the user event;an unlock condition section; for storing, when the generated event is anevent other than the user event, contents generated by the GUI contentreproduction section and displayed before and after the execution of aprocess previously allocated to the event other than the user event,each being stored as a first display-content and a seconddisplay-content; and for determining the match of the firstdisplay-content and the second display-content; and a lock controlsection that controls stopping and restarting the update of drawing inthe drawing section based on an order from the event control section;wherein the event control section, stops notifying the GUI contentreproduction section about user events that follow notification to theGUI content reproduction section about the event other than the userevent, and at the same time orders the lock control section to stop theupdate of drawing in the drawing section, when the generated event is anevent other than the user event; and orders to have the informationstored in the user operation storing section to be outputted to the GUIcontent reproduction section, and orders to restart the notification ofthe GUI content reproduction section about user events, and orders thelock control section to restart the update of drawing in the drawingsection, when the first display-content and the second display-contentis determined as a match by the unlock condition section.
 2. The eventprocessor according to claim 1, wherein: the user operation storingsection stores cursor information as an information of the useroperation in order to be able to specify coordinates of the drawingsection on the screen.
 3. The event processor according to claim 1,wherein the event determining section determines whether the generatedevent is the user event or the event other than the user event based ona coordinate position of a cursor on the display-content when thegenerated event is an event carried out by the cursor
 4. The eventprocessor according to claim 1, wherein: the event determining sectiondetermines whether the generated event is the user event or the eventother than the user event based on the kind of a key when the generatedevent is an event carried out by the key.
 5. An event processing methodfor notifying about a generated event to a GUI content reproductionsection which reproduces a GUI content provided by the GUI and outputsare produced display content to a drawing section; the event processingmethod comprising: a step of making a determination of whether agenerated event is a user event based on a user operation via an inputdevice or an event other than the user event; wherein when the generatedevent is determined as a user event resulting from the determination, astep of notifying the GUI content reproduction section about thegenerated user event; when the generated event is determined as an eventother than a user event resulting from the determination; a step ofstoring an information of the user operation; a step of notifying theGUI content reproduction section about the generated event other thanthe user event; a step of stop notifying the GUI content reproductionsection about the user event generated after the notification; a step ofstopping drawing-update of the drawing section; a step of storingcontents generated by the GUI content reproduction section displayedbefore and after the execution of a process previously allocated toevents other than the user event, each being stored as a firstdisplay-content and a second display-content, and the step determinesthe match of the first display-content and the second display-content; astep of outputting the stored information to the GUI contentreproduction section when the first display-content and the seconddisplay-content matches; a step of restart notifying the GUI contentreproduction section about the user event; and a step of restartingdrawing-update of the drawing section.
 6. A computer-readable program,for causing the computer to execute an event processing method, fornotifying about a generated event to a GUI content reproduction sectionwhich reproduces a GUI content provided by the GUI, and for outputting areproduced display content to a drawing section, the event processingmethod comprising: a step of making a determination of whether agenerated event is a user event based on a user operation via an inputdevice or an event other than the user event; wherein when the generatedevent is determined as a user event resulting from the determination, astep of notifying the GUI content reproduction section about thegenerated user event; when the generated event is determined as an eventother than a user event resulting from the determination; a step ofstoring an information of the user operation; a step of notifying theGUI content reproduction section about the generated event other thanthe user event; a step of stop notifying the GUI content reproductionsection about the user event generated after the notification; a step ofstopping drawing-update of the drawing section; a step of storingcontents generated by the GUI content reproduction section displayedbefore and after the execution of a process previously allocated toevents other than the user event, each being stored as a firstdisplay-content and a second display-content, and the step determinesthe match of the first display-content and the second display-content; astep of outputting the stored information to the GUI contentreproduction section when the first display-content and the seconddisplay-content matches; a step of restart notifying the GUI contentreproduction section about the user event; and a step of restartingdrawing-update of the drawing section.
 7. An integrated circuitconsisting of circuits being integrated for notifying about a generatedevent to a GUI content reproduction section which reproduces a GUIcontent provided by the GUI, and outputs a reproduced display content toa drawing section; the integrated circuit integrating: an eventdetermining section for determining whether the generated event is auser event based on a user operation via an input device or an eventother than the user event; an event control section for notifying theGUI content reproduction section about the generated event based on adetermination result from the event determining section; a useroperation storing section for storing information about the useroperation outputted from the event control section when the generatedevent is an event other than the user event; an unlock condition sectionfor storing, when the generated event is an event other than the userevent, contents generated by the GUI content reproduction sectiondisplayed before and after the execution of a process previouslyallocated to events other than the user event, each being stored as afirst display-content and a second display-content; and the unlockcondition section determines the match of the first display-content andthe second display-content; and a lock control section that controlsstopping and restarting the update of drawing in the drawing sectionbased on an order from the event control section; wherein the eventcontrol section is operable to, when the generated event is an eventother than the user event, stop notifying the GUI content reproductionsection about user events that follow notification to the GUI contentreproduction section about the event other than the user event, and atthe same time order the lock control section to stop the update ofdrawing in the drawing section; and the event control section is alsooperable to, when the first display-content and the seconddisplay-content is determined as a match by the unlock conditionsection, order to have the information stored in the user operationstoring section to be outputted to the GUI content reproduction section,and restart the notification of the GUI content reproduction sectionabout user events, and order the lock control section to restart theupdate of drawing in the drawing section.